package com.yuantu.judiciary.model.domain;

import com.yuantu.judiciary.model.BaseDO;
import com.yuantu.judiciary.model.enums.OrganizationType;
import lombok.Data;
import org.hibernate.annotations.Comment;
import org.hibernate.annotations.DynamicUpdate;

import javax.persistence.*;

/**
 * 套餐信息表
 *
 * @author syw
 * @since 2023-06-09
 **/
@Data
@Entity
@DynamicUpdate
@Table(name = "vip_info")
public class VipInfoDO extends BaseDO {

    /**
     * 套餐名称
     */
    @Column(name = "vip_name")
    @Comment("套餐名称")
    private String name;

    /**
     * 组织类型
     */
    @Enumerated(EnumType.STRING)
    @Column(length = 50, nullable = false)
    @Comment("组织类型")
    private OrganizationType type;

    /**
     * 总价（实际价格）
     */
    @Comment("总价（实际价格）")
    private Double totalPrice;

    /**
     * 单价
     */
    @Comment("单价")
    private Double unitPrice;

    /**
     * 时长：年
     */
    @Comment("时长：年")
    private Integer duration;

    /**
     * 查询总次数
     */
    @Comment("查询总次数")
    private Integer queryTotalNum;

    /**
     * 账号数量
     */
    @Comment("账号数量")
    private Integer accountNum;

    /**
     * 是否默认
     */
    @Column(name = "is_default", nullable = false)
    @Comment("是否默认")
    private Boolean defaulted = Boolean.FALSE;

    /**
     * 是否推荐
     */
    @Column(name = "is_recommend", nullable = false)
    @Comment("是否推荐")
    private Boolean recommended = Boolean.FALSE;

    /**
     * 排序
     */
    @Comment("排序")
    private Integer sorted;

    /**
     * 原价（展示价格）
     */
    @Comment("原价（展示价格）")
    private Double originPrice;
}
